package cn.ike.dao.system;

import cn.ike.domain.system.Dept;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 部门Dao
 */
public interface DeptDao {
    /**
     * 查询全部部门
     * @param companyId 根据企业id查询
     * @return
     */
    List<Dept> findAll(@Param("companyId") String companyId , @Param("deptId") String deptId);


    /**
     * 根据id查询部门
     */
    Dept findById(String id);

    /**
     * 添加部门
     */
    void save(Dept dept);

    /**
     * 修改部门
     */
    void update(Dept dept);

    /**
     * 根据删除的部门是否有子部门，如果有子部门不能删除
     * @param deptId 部门id
     * @return
     */
    List<Dept> findByParentId(String deptId);

    /**
     * 根据部门id删除部门
     * @param deptId
     */
    void delete(String deptId);
}
